package cn.doitedu.dfdemo

import cn.doitedu.beans.TeacherBean
import cn.doitedu.util.SparkUtil
import org.apache.spark.rdd.RDD

/**
 * @Date 22.4.10
 * @Created by HANGGE
 * @Description
 */
object C06_MakeDF_RDD {
  def main(args: Array[String]): Unit = {

    val session = SparkUtil.getSession

    // 使用Sparkcontext  加载数据  创建RDD
    // 环境汇总的core-site.xml 指定了默认文件系统为HDFS
    // 操作本地文件系统  本地文件系统协议    file:///本地磁盘路径 [绝对路径]
    val rdd: RDD[String] = session.sparkContext.textFile("file:///D://code//doit30_spark_sql//data/csv/Teacher.csv")
    // 处理RDD  将行转换成  Bean
    // Bean有属性  数据类型  结构
    // table --> javaBean
    val rdd2: RDD[TeacherBean] = rdd.map(line => {
      val arr = line.split(",")
      TeacherBean(arr(0).toInt, arr(1), arr(2).toInt, arr(3), arr(4))
    })
    // 创建DF
    val df = session.createDataFrame(rdd2)
    df.printSchema()
    df.show()

  }

}
